//
// Created by Yandel on 2024/11/26.
//
#include "stdio.h"
#include "stdlib.h"

#define max 10  //顺序表最大容量
typedef int Ele;
/**
 * 静态分配
 */
typedef struct {
    int *data;//指示动态分配数组的指针 可以看成是data[]
    int maxSize;//顺序的最大容量
    int length;//顺序表的当前长度
} SqList;
/**
 * 初始化顺序表
 * @param L
 */
void InitList(SqList *L) {
    L->data = (int *) malloc(max * sizeof(int));
    L->length=0;
    L->maxSize=max;
}

//动态增加数组长度
void IncreaseSize(SqList *L,int len)
{
    int *p=L->data;//指针p指向data数组
    L->data= (int*)malloc((L->maxSize+len)*sizeof (int));
    for(int i=0;i<L->length;i++)
    {
        L->data[i]=p[i]; //将数据复制到新的区域中
    }

    L->maxSize=L->maxSize+len;
    free(p);
}

int main(){
    SqList sqList;
    InitList(&sqList);
    //往顺序表中插入几个元素
    IncreaseSize(&sqList,5);

}